package com.goldgov.distancelearning.dao;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import com.goldgov.distancelearning.service.Distancelearning;
import com.goldgov.distancelearning.service.DistancelearningCourse;
import com.goldgov.distancelearning.service.DistancelearningCourseQuery;

@Mapper
public interface DistancelearningCourseDao {
	
	/**
	 * 获取课件列表
	 * @date 2018年6月22日 下午2:18:19 
	 * @author hanxiangyu
	 * @param query
	 * @return
	 */
	List<DistancelearningCourse> getDistancelearningCourseList(@Param("query") DistancelearningCourseQuery query);
	/**
	 * 新增
	 * @date 2018年6月22日 下午2:19:09 
	 * @author hanxiangyu
	 * @param distancelearningCourse
	 * @return
	 */
	int addDistancelearningCourse(List<DistancelearningCourse> distancelearningCourse);
	/**
	 * 删除
	 * @date 2018年6月22日 下午2:19:41 
	 * @author hanxiangyu
	 * @param distancelearningCourse
	 * @return
	 */
	int deleteDistancelearningCourse(DistancelearningCourse distancelearningCourse);
	/**
	 * 预新增
	 * @date 2018年6月22日 下午2:52:53 
	 * @author hanxiangyu
	 * @return
	 */
	DistancelearningCourse preAdd();
	/**
	 * 获取已经存在的课件id
	 * @date 2018年6月22日 下午2:55:04 
	 * @author hanxiangyu
	 * @param distancelearningID
	 * @return
	 */
	List<String> getAllCourseIds(@Param("distancelearningID") String distancelearningID);
	/**
	 * 更新时查询已经存在的课件
	 * @date 2018年6月22日 下午3:12:25 
	 * @author hanxiangyu
	 * @param distancelearning
	 * @return
	 */
	List<DistancelearningCourse> getExiseJoinCourse(Distancelearning distancelearning);
	/**
	 * 删除出已存在的其他课件
	 * @date 2018年6月22日 下午3:14:28 
	 * @author hanxiangyu
	 * @param distancelearning
	 * @return
	 */
	int deleteNoExiseJoinCourse(DistancelearningCourse distancelearningCourse);
}
